﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Framework.Packets
{
    /// <summary>
    /// Packet action wrapper.
    /// </summary>
    public interface IPacketHandler
    {
        // TODO: opcode methods (or gets/sets)



        /// <summary>
        /// Buffer position.
        /// </summary>
        int Position { get; set; }

        /// <summary>
        /// Packet full length.
        /// </summary>
        long Length { get; }

        /// <summary>
        /// Byte array representing packet content.
        /// </summary>
        byte[] Data { get; }

        /// <summary>
        /// IPacket instance.
        /// </summary>
        IPacket Packet { get; }
    }
}
